package com.sugar.follow.up.module.business.controller.admin.questionnairequestionrecord.vo;

import com.sugar.follow.up.module.business.dal.dataobject.questionnairetemplatequestion.dto.OptionDTO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import cn.idev.excel.annotation.*;

@Schema(description = "管理后台 - 问卷发起答题记录 Response VO")
@Data
@ExcelIgnoreUnannotated
public class QuestionnaireQuestionRecordRespVO {

    @Schema(description = "答题记录ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "14514")
    @ExcelProperty("答题记录ID")
    private Long id;

    @Schema(description = "问卷记录ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "31122")
    @ExcelProperty("问卷记录ID")
    private Long recordId;

    @Schema(description = "用户ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "20533")
    @ExcelProperty("用户ID")
    private Long userId;

    @Schema(description = "问卷问题ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7375")
    @ExcelProperty("问卷问题ID")
    private Long questionId;

    @Schema(description = "标题", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("标题")
    private String title;

    @Schema(description = "提示语")
    @ExcelProperty("提示语")
    private String tip;

    @Schema(description = "题型（0单选 1多选 2填空 3问答 4日期）", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @ExcelProperty("题型（0单选 1多选 2填空 3问答 4日期）")
    private Integer type;

    @Schema(description = "题目选项")
    @ExcelProperty("题目选项")
    private List<OptionDTO> options;

    @Schema(description = "用户答案")
    @ExcelProperty("用户答案")
    private String answer;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

}
